home *** CD-ROM | disk | FTP | other *** search
/ Clickx 115 / Clickx 115.iso / software / tools / windows / tails-i386-0.16.iso / live / filesystem.squashfs / etc / init.d / gdm3 < prev    next >
Encoding:
Text File  |  2011-04-20  |  2.9 KB  |  97 lines

  1. #! /bin/sh
  2. ### BEGIN INIT INFO
  3. # Provides:          gdm3
  4. # Should-Start:      console-screen dbus network-manager
  5. # Required-Start:    $local_fs $remote_fs
  6. # Required-Stop:     $local_fs $remote_fs
  7. # Default-Start:     2 3 4 5
  8. # Default-Stop:      0 1 6
  9. # Short-Description: GNOME Display Manager
  10. # Description:       Debian init script for the GNOME Display Manager
  11. ### END INIT INFO
  12. #
  13. # Author:       Ryan Murray <rmurray@debian.org>
  14. #
  15. set -e
  16.  
  17. PATH=/sbin:/bin:/usr/sbin:/usr/bin
  18. DAEMON=/usr/sbin/gdm3
  19.  
  20. test -x $DAEMON || exit 0
  21.  
  22. if [ -r /etc/default/locale ]; then
  23.   . /etc/default/locale
  24.   export LANG LANGUAGE
  25. fi
  26.  
  27. . /lib/lsb/init-functions
  28.  
  29. # To start gdm even if it is not the default display manager, change
  30. # HEED_DEFAULT_DISPLAY_MANAGER to "false."
  31. HEED_DEFAULT_DISPLAY_MANAGER=true
  32. DEFAULT_DISPLAY_MANAGER_FILE=/etc/X11/default-display-manager
  33.  
  34. gen_config() {
  35.   if [ -d /var/lib/gdm3/.gconf.mandatory ]; then
  36.     update-gconf-defaults \
  37.     --source=/usr/share/gdm/greeter-config \
  38.     --destination=/var/lib/gdm3/.gconf.mandatory \
  39.     --no-signal \
  40.     --only-if-changed
  41.   fi
  42.   if [ -f /var/lib/gdm3/.gconf.mandatory/%gconf-tree.xml ]; then
  43.     chown Debian-gdm:Debian-gdm /var/lib/gdm3/.gconf.mandatory/%gconf-tree.xml
  44.   fi
  45. }
  46.  
  47. case "$1" in
  48.   start)
  49.         CONFIGURED_DAEMON=$(basename "$(cat $DEFAULT_DISPLAY_MANAGER_FILE 2> /dev/null)")
  50.         if grep -wqs text /proc/cmdline; then
  51.             log_warning_msg "Not starting GNOME Display Manager; found 'text' in kernel commandline."
  52.         elif [ -e "$DEFAULT_DISPLAY_MANAGER_FILE" ] && \
  53.            [ "$HEED_DEFAULT_DISPLAY_MANAGER" = "true" ] && \
  54.            [ "$CONFIGURED_DAEMON" != gdm3 ] ; then
  55.                 log_action_msg "Not starting GNOME Display Manager; it is not the default display manager"
  56.         else
  57.                 log_daemon_msg "Starting GNOME Display Manager" "gdm3"
  58.                 gen_config
  59.                 start-stop-daemon --start --quiet --pidfile /var/run/gdm3.pid \
  60.             --background --exec $DAEMON || log_end_msg 1
  61.                 log_end_msg 0
  62.         fi
  63.   ;;
  64.   stop)
  65.         log_daemon_msg "Stopping GNOME Display Manager" "gdm3"
  66.         set +e
  67.         start-stop-daemon --stop --quiet --pidfile /var/run/gdm3.pid \
  68.                 --name gdm3 --retry 5
  69.         set -e
  70.         log_end_msg $?
  71.   ;;
  72.   reload)
  73.         log_daemon_msg "Scheduling reload of GNOME Display Manager configuration" "gdm3"
  74.         set +e
  75.         gen_config
  76.         start-stop-daemon --stop --signal USR1 --quiet --pidfile \
  77.                 /var/run/gdm3.pid --name gdm3
  78.         start-stop-daemon --stop --signal HUP --quiet --name gconfd-2 \
  79.                 --user Debian-gdm --oknodo
  80.         set -e
  81.         log_end_msg $?
  82.   ;;
  83.   status)
  84.         status_of_proc -p "$PIDFILE" "$DAEMON" gdm3 && exit 0 || exit $?
  85.   ;;
  86.   restart|force-reload)
  87.         $0 stop
  88.         $0 start
  89.   ;;
  90.   *)
  91.         echo "Usage: /etc/init.d/gdm3 {start|stop|restart|reload|force-reload|status}"
  92.         exit 1
  93.   ;;
  94. esac
  95.  
  96. exit 0
  97.